
$f: 19.2;

.home {
    position: relative;
    width: 100%;
    .section1 {
        padding: 257/$f+vw 0 0;
        margin: 0 0 235/$f+vw;
        .wrap {
            width: 1500/$f+vw;
            margin: 0 auto;
            display: flex;
            align-items: center;
            justify-content: space-between;
            .l {
                width: 555/$f+vw;
                .title {
                    line-height: 1;
                    margin: 0 0 49/$f+vw;
                    p {
                        font-size: 18/$f+vw;
                        font-weight: 400;
                    }
                    h1 {
                        font-size: 50/$f+vw;
                        font-weight: 700;
                        margin: 11/$f+vw 0 0;
                    }
                }
                .content {
                    margin: 0 0 88/$f+vw;
                    p {
                        font-size: 18/$f+vw;
                        font-weight: 400;
                        line-height: 21/$f+vw;
                        color: #666666;
                    }
                }
            }
            .r {
                width: 880/$f+vw;
                position: relative;
                overflow: hidden;
                img {
                    display: block;
                    width: 100%;
                    transition: 3s;
                }
                &:hover {
                    img {
                        transform: scale(1.1);
                    }
                }
            }
        }
    }
    .section2 {
        overflow: hidden;
        margin: 0 0 180/$f+vw;
        .wrap {
            width: 1500/$f+vw;
            margin: 0 auto;
            .title {
                margin: 0 0 35/$f+vw;
                h1 {
                    font-size: 50/$f+vw;
                    font-weight: 700;
                    line-height: 1;
                    text-align: left;
                }
            }
            .swiper {
                width: 1770/$f+vw;
                overflow: hidden;
                .img {
                    width: 100%;
                    border-radius: 3/$f+vw;
                    overflow: hidden;
                    img {
                        display: block;
                        width: 100%;
                        transition: 3s;
                    }
                    &:hover {
                        img {
                            transform: scale(1.1);
                        }
                    }
                }
            }
        }
    }
    .section3 {
        margin: 0 0 151/$f+vw;
        .wrap {
            width: 1500/$f+vw;
            margin: 0 auto;
            .title {
                margin: 0 0 40/$f+vw;
                h1 {
                    font-size: 50/$f+vw;
                    font-weight: 700;
                    line-height: 1;
                    color: #000;
                }
            }
            .section3_top {
                display: flex;
                align-items: center;
                justify-content: space-between;
                margin: 0 0 57/$f+vw;
                .img {
                    width: 750/$f+vw;
                    border-radius: 3/$f+vw;
                    overflow: hidden;
                    img {
                        display: block;
                        width: 100%;
                        transition: 3s;
                    }
                    &:hover {
                        img {
                            transform: scale(1.1);
                        }
                    }
                }
                .text {
                    width: 680/$f+vw;
                    h1 {
                        font-size: 50/$f+vw;
                        font-weight: 700;
                        line-height: 58.6/$f+vw;
                        text-align: left;
                        margin: 0 0 40/$f+vw;
                        color: #000;
                    }
                    .content {
                        p {
                            font-size: 18/$f+vw;
                            font-weight: 400;
                            line-height: 21.1/$f+vw;
                            color: #666666;
                        }
                    }
                }
            }
            .flex {
                display: flex;
                .item {
                    width: 360/$f+vw;
                    height: 433/$f+vw;
                    border-radius: 3/$f+vw;
                    border: 1/$f+vw solid #CFCFCF;
                    padding: 12/$f+vw;
                    .img {
                        width: 100%;
                        border-radius: 3/$f+vw;
                        overflow: hidden;
                        img {
                            display: block;
                            width: 100%;
                            transition: 3s;
                        }
                    }
                    .item_text {
                        padding: 0 14/$f+vw;
                        h5 {
                            font-size: 26/$f+vw;
                            font-weight: 700;
                            line-height: 1;
                            margin: 24/$f+vw 0 15/$f+vw;
                            color: #000;
                            white-space: nowrap; 
                            overflow: hidden; 
                            text-overflow: ellipsis; 
                        }
                        p {
                            font-size: 16/$f+vw;
                            font-weight: 400;
                            line-height: 18.75/$f+vw;
                            color: #666666;
                        }
                    }
                    &:not(:nth-last-child(1)) {
                        margin-right: 19/$f+vw;
                    }
                    &:hover {
                        .img {
                            img {
                                transform: scale(1.1);
                            }
                        }
                    }
                }
            }
        }
    }
    .section4 {
        padding: 0 0 200/$f+vw;
        .wrap {
            width: 1500/$f+vw;
            margin: 0 auto;
            .title {
                margin: 0 0 54/$f+vw;
                h1 {
                    font-size: 50/$f+vw;
                    font-weight: 700;
                    line-height: 1;
                    color: #000;
                }
            }
            .section4_top {
                width: 100%;
                border-radius: 3/$f+vw;
                box-shadow: 0/$f+vw 0/$f+vw 58/$f+vw 0/$f+vw rgba(0,0,0,.4);
                padding: 45/$f+vw 48/$f+vw;
                display: flex;
                margin: 0 0 130/$f+vw;
                .img {
                    width: 340/$f+vw;
                    border-radius: 3/$f+vw;
                    overflow: hidden;
                    margin: 0 70/$f+vw 0 0;
                    height: 490/$f+vw;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    img {
                        display: block;
                        width: 100%;
                        max-height: 100%;
                        object-fit: contain;
                    }
                }
                .text {
                    padding: 90/$f+vw 0 0;
                    .name {
                        margin: 0 0 28/$f+vw;
                        h5 {
                            font-size: 26/$f+vw;
                            font-weight: 700;
                            line-height: 1;
                            margin: 0 0 11/$f+vw;
                            color: #000;
                        }
                        p {
                            font-size: 16/$f+vw;
                            font-weight: 400;
                            line-height: 1;
                        }
                    }
                    .content {
                        width: 780/$f+vw;
                        p {
                            font-size: 18/$f+vw;
                            font-weight: 400;
                            line-height: 21.1/$f+vw;
                            color: #666666;
                        }
                    }
                }
            }
            .flex {
                display: flex;
                flex-wrap: wrap;
                .item {
                    width: 344/$f+vw;
                    text-align: center;
                    margin-bottom: 74/$f+vw;
                    .img {
                        width: 197/$f+vw;
                        height: 197/$f+vw;
                        border-radius: 50%;
                        overflow: hidden;
                        margin: 0 auto 6/$f+vw;
                        object-fit: contain;
                        img {
                            display: block;
                            width: 100%;
                            height: 100%;
                            transition: 3s;
                        }
                    }
                    .name {
                        margin: 0 0 35/$f+vw;
                        h5 {
                            font-size: 26/$f+vw;
                            font-weight: 700;
                            line-height: 1;
                            margin: 0 0 9/$f+vw;
                            color: #000;
                        }
                        p {
                            font-size: 16/$f+vw;
                            font-weight: 400;
                            line-height: 1;
                        }
                    }
                    .content {
                        p {
                            font-size: 18/$f+vw;
                            font-weight: 400;
                            line-height: 21.1/$f+vw;
                            color: #666666;
                        }
                    }
                    &:not(:nth-child(3n)) {
                        margin-right: 206/$f+vw;
                    }
                    &:hover {
                        .img {
                            img {
                                transform: scale(1.1);
                            }
                        }
                    }
                }
            }
        }
    }
 
}
@media screen and (max-width: 1024px) {
    .home {
        .section1 {
            padding: 80px 0 0;
            margin: 0 0 50px;
            .wrap {
                width: 90%;
                flex-direction: column-reverse;
                .r {
                    width: 100%;
                    margin: 0 0 40px;
                }
                .l {
                    width: 100%;
                    .title {
                        margin: 0 0 20px;
                        p {
                            font-size: 18px;
                        }
                        h1 {
                            font-size: 24px;
                            margin: 10px 0 0;
                        }
                    }
                    .content {
                        width: 100%;
                        margin: 0 0 30px;
                        p {
                            font-size: 16px;
                            line-height: 1.5;
                        }
                    }
                }
            }
        }
        .section2,.section3,.section4 {
            margin-bottom: 50px;
            .wrap {
                width: 90%;
                .title {
                    margin: 0 0 30px;
                    h1 {
                        font-size: 24px;
                    }
                }
                
            }
        }
        .section2 {
            .wrap {
                .swiper {
                    width: 100%;
                }
            }
        }
        .section3 {
            .wrap {
                .section3_top {
                    display: block;
                    margin: 0 0 30px;
                    .img {
                        width: 100%;
                        margin: 0 0 30px;
                    }
                    .text {
                        width: 100%;
                        h1 {
                            font-size: 18px;
                            margin: 0 0 20px;
                        }
                        .content {
                            p {
                                font-size: 16px;
                                line-height: 1.5;
                            }
                        }
                    }
                }
                .flex {
                    flex-wrap: wrap;
                    .item {
                        width: 100%;
                        height: unset;
                        padding: 15px;
                        margin: 0 0 10px;
                        .img {
                            margin: 0 0 25px;
                        }
                        .item_text {
                            padding: 0 10px 20px;
                            h5 {
                                font-size: 18px;
                            }
                            p {
                                font-size: 16px;
                                line-height: 1.5;
                                margin: 10px 0 0;
                            }
                        }
                    }
                }
            }
        }
        .section4 {
            .wrap {
                .section4_top {
                    padding: 20px;
                    display: block;
                    margin: 0 0 30px;
                    .img {
                        width: 100%;
                        height: 200px;
                    }
                    .text {
                        .name {
                            margin: 0 0 20px;
                            h5 {
                                font-size: 20px;
                                margin: 0 0 15px;
                            }
                            p {
                                font-size: 14px;
                            }
                        }
                        .content {
                            width: 100%;
                            p {
                                font-size: 16px;
                                line-height: 1.5;
                            }
                        }
                    }
                }
                .flex {
                    justify-content: space-between;
                    .item {
                        width: 48%;
                        margin: 0 0 20px !important;
                        .img {
                            width: 30vw;
                            height: 30vw;
                            margin: 0 auto 10px;
                        }
                        .text {
                            .name {
                                margin: 0 0 20px;
                                h5 {
                                    font-size: 18px;
                                    margin: 0 0 10px;
                                }
                                p {
                                    font-size: 14px;
                                }
                            }
                            .content {
                                width: 100%;
                                p {
                                    font-size: 14px;
                                    line-height: 1.5;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}